Methods and Systems for Input Suggestion

ABSTRACT

The present disclosure is directed to input suggestion. In particular, the methods and systems of the present disclosure can: receive, from a first application executed by one or more computing devices, data indicating information that has been presented by and/or input into the first application; generate, based at least in part on the received data, one or more suggested candidate inputs for a second application executed by the computing device(s); provide, in association with the second application, an interface comprising one or more options to select at least one suggested candidate input of the suggested candidate input(s); and responsive to receiving data indicating a selection of a particular suggested candidate input of the suggested candidate input(s) via the interface, communicate, to the second application, data indicating the particular suggested candidate input.

FIELD

The present disclosure relates generally to human-computer interaction.More particularly, the present disclosure relates to input suggestion.

BACKGROUND

Computing devices (e.g., desktop computers, laptop computers, tabletcomputers, smartphones, wearable computing devices, and/or the like) areubiquitous in modern society. They can support communications betweentheir users, provide their users with information about theirenvironments, current events, the world at large, and/or the like. Amyriad of different types of interfaces enable users to interact withsuch devices. For example, many devices include a touchscreen andprovide an interface (e.g., including user-selectable options, akeyboard, and/or the like) configured to enable users to inputinformation.

SUMMARY

Aspects and advantages of embodiments of the present disclosure will beset forth in part in the following description, or can be learned fromthe description, or can be learned through practice of the embodiments.

One example aspect of the present disclosure is directed to acomputer-implemented method. The method can include receiving, by one ormore computing devices and from a first application executed by thecomputing device(s), data indicating information that has been presentedby and/or input into the first application. The method can also includegenerating, by the computing device(s), based at least in part on thedata indicating the information that has been presented by and/or inputinto the first application, one or more suggested candidate inputs for asecond application executed by the computing device(s). The generatingcan be performed without receiving user input via the first applicationindicating a desire to be able to utilize data based at least in part onthe information in the second application, and the second applicationcan be different and distinct from the first application. The method canfurther include providing, by the computing device(s) and in associationwith the second application, an interface comprising one or more optionsto select at least one suggested candidate input of the suggestedcandidate input(s). The method can further include, responsive toreceiving data indicating a selection of a particular suggestedcandidate input of the suggested candidate input(s) via the interface,communicating, by the computing device(s) and to the second application,data indicating the particular suggested candidate input.

Another example aspect of the present disclosure is directed to asystem. The system can include one or more processors and a memorystoring instructions that when executed by the processor(s) cause thesystem to perform operations. The operations can include receiving dataindicating information that has been presented by a first applicationexecuted by the system. The operations can also include receiving dataindicating information that has been input into a second applicationexecuted by the system. The second application can be different anddistinct from the first application. The operations can further includegenerating, based at least in part on the data indicating theinformation that has been presented by the first application and thedata indicating the information that has been input into the secondapplication, one or more suggested candidate inputs for the secondapplication. The operations can further include providing, inassociation with the second application, an interface comprising one ormore options to select at least one suggested candidate input of thesuggested candidate input(s). The operations can further include,responsive to receiving data indicating a selection of a particularsuggested candidate input of the suggested candidate input(s) via theinterface, communicating, to the second application, data indicating theparticular suggested candidate input.

A further example aspect of the present disclosure is directed to one ormore non-transitory computer-readable media. The non-transitorycomputer-readable media can comprise instructions that when executed byone or more computing devices cause the computing device(s) to performoperations. The operations can include receiving data indicatinginformation that has been presented by and/or input into an applicationexecuted by the computing device(s). The operations can also includegenerating, based at least in part on the data indicating theinformation that has been presented by and/or input into theapplication, one or more suggested candidate inputs for the application.The suggest candidate input(s) can include a suggested candidate inputcomprising metadata determined based at least in part on an entityassociated with the suggested candidate input. The operations canfurther include providing, in association with the application executedby the computing device(s), an interface comprising one or more optionsto select at least one suggested candidate input of the suggestedcandidate input(s). The at least one suggested candidate input caninclude the suggested candidate input comprising the metadata determinedbased at least in part on the entity associated with the suggestedcandidate input.

Other aspects of the present disclosure are directed to various systems,apparatuses, non-transitory computer-readable media, user interfaces,and electronic devices.

These and other features, aspects, and advantages of various embodimentsof the present disclosure will become better understood with referenceto the following description and appended claims. The accompanyingdrawings, which are incorporated in and constitute a part of thisspecification, illustrate example embodiments of the present disclosureand, together with the description, serve to explain the relatedprinciples.

BRIEF DESCRIPTION OF THE DRAWINGS

Detailed discussion of embodiments directed to one of ordinary skill inthe art is set forth in the specification, which makes reference to theappended figures, in which:

FIG. 1 depicts an example computing environment according to exampleembodiments of the present disclosure;

FIGS. 2A-N depict example graphical user interfaces (GUIs) according toexample embodiments of the present disclosure;

FIGS. 3A-D depict additional example GUIs according to exampleembodiments of the present disclosure;

FIG. 4 depicts example GUI elements according to example embodiments ofthe present disclosure;

FIG. 5 depicts example use cases according to example embodiments of thepresent disclosure; and

FIG. 6 depicts an example method according to example embodiments of thepresent disclosure.

DETAILED DESCRIPTION

Example aspects of the present disclosure are directed to inputsuggestion. In particular, one or more computing devices can provide(e.g., as part of an operating system (OS), and/or the like) an inputinterface (e.g., a graphical user interface (GUI) comprising a keyboard,and/or the like) configured to enable a user to input data into one ormore applications executed by the computing device(s). Such an interfacecan be configured to present (e.g., as part of the keyboard, and/or thelike) the user with suggested candidate inputs, for example, one or morewords, phrases, and/or the like that the user may desire to input (e.g.,into an application being utilized, at a current cursor position, and/orthe like). For example, the user's historical input, recently inputtext, and/or the like can be analyzed (e.g., using natural-languagemodels, and/or the like) to generate suggested candidate inputs. Theprovision of suggested candidate input(s) as described herein can enablea user to more efficiently input data into computing device(s), therebyreducing interaction between the user and the computing device(s). Thismay be particularly useful for users having reduced dexterity, manualcapabilities, and/or the like in all or certain situations, which canmake effective interaction with the device(s) problematic, and/or thelike.

A user can switch between different and distinct applications executedby the computing device(s), for example, to perform various functionswith respect to an undertaken task, and/or the like. For example, a usercan utilize a messaging (e.g., chat, short message service (SMS), and/orthe like) application to communicate with a contact to schedule anappointment, and/or the like. While utilizing the messaging application,the user may utilize (e.g., switch to, amongst, and/or the like) one ormore other applications (e.g., a calendar application, web browser,and/or the like), for example, to identify, locate, determine, and/orthe like information pertinent to the conversation with the contact(e.g., their schedule availability, a venue at which to meet, and/or thelike).

In accordance with aspects of the disclosure, the computing device(s)can receive data indicating information (e.g., text, graphics, imagery,audio, video, and/or the like) presented by and/or input into one ormore of the applications, and based at least in part on such data, thecomputing device(s) can generate one or more suggested candidate inputsfor an application. An interface comprising one or more options toselect at least one of the suggested candidate input(s) can be providedin association with the application (e.g., within a GUI of theapplication, in conjunction with a GUI of the application, adjacent to aGUI of the application, overlaid on a portion of a GUI of theapplication, as part of a keyboard, via the OS, and/or the like)executed by the computing device(s). A user can utilize the interface toselect one of the suggested candidate input(s), and data indicating thesame can be received by the computing device(s). Responsive to receivingsuch data, the computing device(s) can communicate data indicating theselected suggested candidate input to the application.

In some embodiments, the application for which the suggested candidateinput(s) are generated can be different and distinct from theapplication(s) that presented the information, into which theinformation was input, and/or the like. For example, the data receivedcan indicate information presented by and/or input into a web browser(e.g., pertaining to a venue, such as a restaurant or the like, at whichto meet, and/or the like), and the suggested candidate input(s) (e.g.,the name of the venue, and/or the like) can be generated for a messagingapplication (e.g., to communicate to the contact the name of the venue,and/or the like). It will be appreciated that subject to user consent(e.g., regarding potential privacy concerns, and/or the like), this canbe performed in an automated fashion, for example, without receivinguser input (e.g., via the web browser, and/or the like) indicating adesire to be able to utilize data based at least in part on theinformation (e.g., presented by and/or input into the web browser,and/or the like) in the different application (e.g., the messagingapplication, and/or the like). That is, the functionality need not beaffirmatively invoked by the user (e.g., via an OS clipboard commandsuch as cut, copy, and/or the like) in order to generate the suggestedcandidate input(s), provide the interface, and/or the like.

Additionally or alternatively, the computing device(s) can generate thesuggested candidate input(s) based at least in part on data indicatinginformation presented by and/or input into the application for which thesuggested candidate input(s) are generated. For example, the suggestedcandidate input(s) (e.g., the name, address, and/or the like of thevenue, and/or the like) can be generated for the messaging application(e.g., to communicate to the contact, and/or the like) based at least inpart on data indicating information presented by and/or input into themessaging application (e.g., one or more portions of the conversationproviding context indicating the name, address, and/or the like of thevenue should be input, and/or the like).

In some embodiments, the suggested candidate input(s) can include asuggested candidate input comprising data configured to cause adifferent and distinct application executed by a different and distinctcomputing device to output content related to the information presentedby and/or input into the application(s) executed by the computingdevice(s). For example, the suggested candidate input(s) can include asuggested candidate input comprising data configured to cause adifferent and distinct application (e.g., an application other than themessaging application, such as a web browser, mapping application,product/service-review application, and/or the like) executed by one ormore computing devices of the contact to output content related to theinformation (e.g., pertaining to the venue, and/or the like) presentedby and/or input into the application(s) executed by the user's computingdevice(s).

In some embodiments, the application(s) can communicate the dataindicating the information presented by and/or input into them via anapplication programming interface (API) of the computing device(s)configured to manage a file-based application-indexing log stored on thecomputing device(s) and comprising data indicating one or moreapplication actions, events, and/or the like. In some of suchembodiments, receiving the data indicating the information can includeretrieving such data from the file-based application-indexing log viathe API, and/or the like. Additionally or alternatively, the dataindicating the information can be received via a device-accessibilityAPI of the computing device(s), and/or the like.

In some embodiments, the computing device(s) can utilize a machinelearning (ML) model (e.g., based at least in part on data generated bymultiple different users' computing devices, via a federated-learningparadigm, and/or the like) to determine, for each of the suggestedcandidate input(s), a predicted likelihood that a user will select thesuggested candidate input via the interface. In some of suchembodiments, the computing device(s) can determine, for each of thesuggested candidate input(s) for which a selection option is provided inthe interface, to include the selection option for the suggestedcandidate input in the interface based at least in part on the predictedlikelihood that the user will select it.

In some embodiments, the computing device(s) can annotate one or more ofthe suggested candidate input(s) with metadata determined based at leastin part on factual knowledge about the user (e.g., their name, theirschedule availability, and/or the like), factual knowledge about aphysical environment in which the computing device(s) are located (e.g.,facts about their current geographic locations, such as the names ofstreets, businesses, and/or the like, facts about society, such as thenames, titles, characteristics, and/or the like of famous people,entities, organizations, places, events, and/or the like), a portion ofthe information provided by and/or input into the application(s), and/orthe like. In some of such embodiments, for each of the annotatedsuggested candidate input(s), the computing device(s) can determine thepredicted likelihood that the user will select the suggested candidateinput based at least in part on its metadata.

Additionally or alternatively, for each of one or more of the suggestedcandidate input(s), the computing device(s) can generate one or morenumeric descriptions of one or more features of the suggested candidateinput distinct from its content. For example, such features can includea type of societal entity (e.g., person, organization, business, and/orthe like) associated with the suggested candidate input, how recentlyand/or how frequently the content of the suggested candidate input waspresented by the computing device(s), and/or the like. In someembodiments, for each of such suggested candidate input(s), thecomputing device(s) can determine the predicted likelihood that the userwill select the suggested candidate input based at least in part on oneor more of its corresponding numeric description(s).

In some embodiments, for each of such suggested candidate input(s), thecomputing device(s) can generate a training record for the ML modelbased at least in part on the numeric description(s) for the suggestedcandidate input, whether the user selected the suggested candidateinput, and/or the like. For example, such training record(s) can enablethe ML model to more accurately process inputs based at least in part ontheir generic characteristics, contexts, structures, and/or the like.Additionally or alternatively, such training record(s) can omit,obscure, and/or the like the content of the suggested candidateinput(s), the information presented by and/or input into theapplication(s), and/or the like, which can, for example, mitigateprivacy concerns (e.g., in the context of a federated-learning paradigm,and/or the like). In some embodiments, a training record can begenerated based at least in part on a determination that the usermanually input data corresponding to content of the suggested candidateinput, for example, in lieu of selecting the suggested candidate inputvia the interface. For example, such a record can indicate the suggestedcandidate input was accurate, correct, and/or the like even if the userfailed to select the suggested candidate input.

In some embodiments, for each of one or more of the suggested candidateinput(s), the computing device(s) can determine the predicted likelihoodthat the user will select the suggested candidate input based at leastin part on data identifying the application for which the suggestedcandidate input was generated, a selected input field of suchapplication, and/or the like. For example, the user can switch to aride-sharing application; a destination field therein can be selected(e.g., by the user, by default, and/or the like); based at least in parton data identifying the ride-sharing application, the destination field,and/or the like, the computing device(s) can determine one or more ofthe suggested candidate input(s) (e.g., an address of the venue, and/orthe like) has a higher likelihood of being selected than one or moreother of the suggested candidate input(s); and/or the like.

In some embodiments, a prominence within the interface of one or more ofthe option(s) for selecting the suggested candidate input(s) can bedetermined based at least in part on the likelihood that the user willselect the suggested candidate input(s). For example, in someembodiments, providing the interface can include generating a graphicaluser interface (GUI) comprising one or more elements corresponding tothe option(s) for selecting the suggested candidate input(s). In some ofsuch embodiments, the computing device(s) can determine one or moresizes of such element(s) based at least in part on the likelihood thatthe user will select their corresponding suggested candidate input(s)(e.g., a larger element could be generated for a suggested candidateinput with a higher likelihood of being selected, and/or the like).Additionally or alternatively, the computing device(s) can determine anumber of elements (e.g., corresponding to one or more other (oralternative) suggested candidate inputs, and/or the like) to bepresented alongside an element based at least in part on the likelihoodthat the user will select the suggested candidate input corresponding tothe element (e.g., fewer elements could be presented alongside anelement for a suggested candidate input with a higher likelihood ofbeing selected, and/or the like).

The technology described herein can provide a number of technicaleffects and benefits. For example, the technology described herein canenable a user to interact with one or more computing devices moreefficiently, for example, by enabling them to more efficiently inputdata into various applications, and/or the like. By reducing interactionbetween the user and the computing device(s), device resources (e.g.,energy, and/or the like) can be conserved. As previously indicated, thetechnology described herein may be particularly useful for users havingreduced dexterity, manual capabilities, and/or the like, which can makeeffective interaction with the device(s) problematic, and/or the like.For example, the technology described herein can reduce the need forusers to switch between applications in order to identify, locate,manually copy, and/or the like information for use in anotherapplication, and/or the like. Additionally or alternatively, thetechnology described herein can facilitate the development of an MLmodel capable of accurately suggesting candidate inputs based at leastin part on their generic characteristics, use context, and/or the like.Moreover, the technology described herein can permit such a model to bedeveloped in a manner that leverages the resources, wisdom, and/or thelike of the crowd (e.g., via a federated-learning paradigm, and/or thelike) but mitigates potential privacy concerns of participating users,and/or the like.

With reference now to the Figures, example embodiments of the presentdisclosure will be discussed in further detail.

FIG. 1 depicts an example computing environment according to exampleembodiments of the present disclosure.

Referring to FIG. 1 , environment 100 can include one or more computingdevices (e.g., one or more desktop computers, laptop computers, tabletcomputers, mobile devices, smartphones, servers, and/or the like). Forexample, environment 100 can include computing devices 10, 20, 30, 40,and 50 and computing system 112, which can include one or more computingdevices. Environment 100 can also include one or more networks 110(e.g., one or more wired networks, wireless networks, and/or the like).Network(s) 110 can interface computing devices 10, 20, 30, 40, and/or 50with one another and/or with computing system 112.

Computing device 10 can include one or more processor(s) 102, one ormore communication interfaces 104, and memory 106 (e.g., one or morehardware components for storing executable instructions, data, and/orthe like). Communication interface(s) 104 can enable computing device 10to communicate with computing devices 20, 30, 40, and/or 50 and/or withcomputing system 112. Memory 106 can include (e.g., store, and/or thelike) instructions 108. When executed by processor(s) 102, instructions108 can cause computing device 10 to perform one or more operations,functions, and/or the like described herein. It will be appreciated thatcomputing devices 20, 30, 40, and/or 50 can include one or more of thecomponents described above with respect to computing device 10.

Computing system 112 can include one or more processor(s) 114, one ormore communication interfaces 116, and memory 118 (e.g., one or morehardware components for storing executable instructions, data, and/orthe like). Communication interface(s) 116 can enable computing system112 to communicate with computing devices 10, 20, 30, 40, and/or 50.Memory 118 can include (e.g., store, and/or the like) instructions 120.When executed by processor(s) 114, instructions 120 can cause computingsystem 112 to perform one or more operations, functions, and/or the likedescribed herein.

Unless explicitly indicated otherwise, the operations, functions, and/orthe like described herein can be performed by computing devices 10, 20,30, 40, and/or 50 and/or computing system 112 (e.g., by computing device10, 20, 30, 40, or 50, by computing system 112, by a combination ofcomputing devices 10, 20, 30, 40, and/or 50 and/or computing system 112,and/or the like).

FIGS. 2A-N depict example graphical user interfaces (GUIs) according toexample embodiments of the present disclosure.

Referring to FIG. 2A, computing device 10 can include a display (e.g., atouchscreen, and/or the like) and can generate data describing one ormore GUIs. The data describing the GUI(s) can be communicated to thedisplay, which can present (e.g., render, display, and/or the like) theGUI(s) (e.g., for viewing by a user, and/or the like). For example,computing device 10 can generate data describing GUI 202, which can beassociated with an application executed by computing device 10 (e.g., amessenger application, and/or the like) and can be presented by thedisplay of computing device 10.

Computing device 10 can provide, in association with the application(e.g., within a GUI of the application, in conjunction with a GUI of theapplication, adjacent to a GUI of the application, overlaid on a portionof a GUI of the application, as part of a keyboard, via the OS, and/orthe like) an input interface (e.g., one or more GUI elements comprisinga keyboard, and/or the like) configured to enable a user to input datainto the application. For example, GUI 202 can include element 214(e.g., a QWERTY keyboard, and/or the like), which can be configured toenable a user of computing device 10 to input data into the applicationassociated with GUI 202 (e.g., by interacting with one or more portionsof GUI 202 via the display of computing device 10, and/or the like).While for purposes of illustration, convenience, clarity, and/or thelike, reference is made herein to interfaces comprising one or moreGUIs, it will be appreciated that other types of interfaces (e.g.,audio-prompt/command interfaces, human-gesture interfaces, and/or thelike) can be utilized (e.g., in addition to GUI(s), in lieu of GUI(s),and/or the like) in accordance with embodiments of the presentdisclosure.

In accordance with aspects of the disclosure, computing device 10 canreceive data indicating information (e.g., text, graphics, imagery,audio, video, and/or the like) presented by and/or input into one ormore different and distinct applications executed by computing device10. For example, computing device 10 can receive data indicatinginformation presented via element 204 of GUI 202 by the applicationassociated with GUI 202 (e.g., text comprising messages exchangedbetween the user of computing device 10 and an individual named “JoeFriend,” and/or the like). Additionally or alternatively, computingdevice 10 can receive data indicating information input via element 206of GUI 202 into the application associated with GUI 202 (e.g., textcomprising messages composed (or being composed) by the user ofcomputing device 10, and/or the like).

In some embodiments, the application(s) can communicate the dataindicating the information presented by and/or input into them via anapplication programming interface (API) of computing device 10configured to manage a file-based application-indexing log stored oncomputing device 10 and comprising data indicating one or moreapplication actions, events, and/or the like. In some of suchembodiments, computing device 10 can receive the data indicating theinformation by retrieving such data from the file-basedapplication-indexing log via the API, and/or the like. Additionally oralternatively, computing device 10 can receive the data indicating theinformation via a device-accessibility API of computing device 10,and/or the like. It will be appreciated that receiving such data may besubject to consent of the user of computing device 10 (e.g., to mitigateprivacy concerns, and/or the like).

Based at least in part on such data, computing device 10 can generateone or more suggested candidate inputs (e.g., one or more words,phrases, and/or the like) for an application executed by computingdevice 10. For example, based at least in part on the data indicatingthe information presented via element 204 and/or input via element 206,computing device 10 can generate one or more suggested candidate inputs(e.g., “Not sure,” “Give me a sec,” “I'm,” and/or the like) that theuser of computing device 10 may desire to input into the applicationassociated with GUI 202 via a field corresponding to element 206 of GUI202, and/or the like. In some embodiments, computing device 10 cananalyze (e.g., using natural-language models, and/or the like) the dataindicating the information to generate the suggested candidate input(s).

The input interface provided by computing device 10 can include one ormore options to select at least one of the suggested candidate input(s).For example, GUI 202 can include elements 208, 210, and 212, which cancorrespond to options for selecting one or more of the generatedsuggested candidate input(s) (e.g., “Not sure,” “Give me a sec,” “I'm,”and/or the like). The user of computing device 10 can utilize theinterface to select one of the suggested candidate input(s), andcomputing device 10 can receive data indicating the same. For example,the user of computing device 10 can utilize the interface (e.g., invokeelement 210, and/or the like) to select the suggested candidate input(e.g., “Give me a sec,” and/or the like) corresponding to element 210,and computing device 10 can receive data indicating the selectedsuggested candidate input. Responsive to receiving such data, computingdevice 10 can communicate data indicating the selected suggestedcandidate input to the application. For example, responsive to receivingthe data indicating the user of computing device 10 has selected thesuggested candidate input (e.g., “Give me a sec,” and/or the like)corresponding to element 210, computing device 10 can communicate dataindicating the selected suggested candidate input to the applicationassociated with GUI 202 (e.g., by populating the field corresponding toelement 206 with “Give me a sec,” and/or the like).

The user of computing device 10 can switch between the different anddistinct application(s) executed by computing device 10, for example, toperform various functions with respect to an undertaken task, and/or thelike. For example, the user can utilize the application associated withGUI 202 (e.g., the messaging application, and/or the like) tocommunicate with another individual (e.g., Joe Friend, and/or the like)to schedule a lunch, and/or the like. While utilizing the applicationassociated with GUI 202, the user may utilize (e.g., switch to, amongst,and/or the like) one or more of the other application(s) executed bycomputing device 10 (e.g., a calendar application, web browser, and/orthe like), for example, to identify, locate, determine, and/or the likeinformation pertinent to the conversation with the other individual(e.g., their schedule availability, a restaurant at which to meet,and/or the like).

For example, referring to FIG. 2B, the user of computing device 10 canswitch to an application (e.g., a web browser, and/or the like)associated with GUI 216 (e.g., to identify a restaurant at which to meetJoe Friend, and/or the like). Computing device 10 can generate datadescribing GUI 216, which can be presented by the display of computingdevice 10, and/or the like. As previously indicated, computing device 10can receive data indicating information presented by and/or input intothe application(s) executed by computing device 10. For example,computing device 10 can receive data indicating information presentedvia element 218 of GUI 216 by the application associated with GUI 216(e.g., text from a website pertaining to the restaurant, and/or thelike).

The user of computing device 10 can then switch back to the previouslyutilized application associated with GUI 202 (e.g., the messagingapplication, and/or the like). For example, referring to FIG. 2C, theuser of computing device 10 can switch to an application (e.g., themessaging application, and/or the like) associated with GUI 220 (e.g.,to resume communicating with Joe Friend, and/or the like). Computingdevice 10 can generate data describing GUI 220, which can be presentedby the display of computing device 10, and/or the like. Computing device10 can receive data indicating information presented via element 204 ofGUI 220 by the application associated with GUI 220 (e.g., “You up forlunch?”, “Sure,” “What you thinking?”, “How about pizza?”, “Soundsgood,” and/or the like). Additionally or alternatively, computing device10 can receive data indicating information input via element 206 of GUI220 into the application associated with GUI 220 (e.g., “Let's try,”and/or the like).

In accordance with aspects of the disclosure, computing device 10 cangenerate, based at least in part on the received data, one or moresuggested candidate inputs for an application executed by computingdevice 10. For example, based at least in part on the data indicatingthe information presented via element 218 (e.g., the text from thewebsite pertaining to the restaurant, and/or the like), the dataindicating the information presented via element 204, and/or the dataindicating the information input via element 206, computing device 10can generate one or more suggested candidate inputs (e.g., “SliceHouse,” “not to,” and/or the like) that the user of computing device 10may desire to input into the application associated with GUI 220 via afield corresponding to element 206 of GUI 220, and/or the like. In someembodiments, one or more of the suggested candidate input(s) (e.g.,“Slice House,” and/or the like) can include metadata (e.g.,“Restaurant,” “https://<url . . . site>.com,” and/or the like)determined based at least in part on one or more entities (e.g., therestaurant, the website pertaining to the restaurant, and/or the like)associated with such suggested candidate input(s).

As previously indicated, the input interface provided by computingdevice 10 can include one or more options to select at least one of thesuggested candidate input(s). For example, GUI 220 can include elements222 and 224, which can correspond to options for selecting one or moreof the generated suggested candidate input(s) (e.g., “Slice House,” “notto,” and/or the like). The user of computing device 10 can utilize theinterface to select one of the suggested candidate input(s), andcomputing device 10 can receive data indicating the same. For example,the user of computing device 10 can utilize the interface (e.g., invokeelement 222, and/or the like) to select the suggested candidate input(e.g., “Slice House,” and/or the like) corresponding to element 222, andcomputing device 10 can receive data indicating the selected suggestedcandidate input. Responsive to receiving such data, computing device 10can communicate data indicating the selected suggested candidate inputto the application. For example, responsive to receiving the dataindicating the user of computing device 10 has selected the suggestedcandidate input (e.g., “Slice House,” and/or the like) corresponding toelement 222, computing device 10 can communicate data indicating theselected suggested candidate input to the application associated withGUI 220 (e.g., by populating the field corresponding to element 206 with“Slice House,” and/or the like).

In some embodiments (e.g., to mitigate potential privacy concerns,and/or the like), a user can be provided with one or more controls forallowing the user to make one or more elections as to if and/or when themethods, systems, functions, operations, and/or the like describedherein can enable collection of certain information (e.g., presented byand/or input into the application(s), and/or the like). Additionally oralternatively, certain data (e.g., presented by and/or input into theapplication(s), and/or the like) can be treated in one or more waysbefore being stored, used, and/or the like (e.g., so personallyidentifiable information can be removed, and/or the like). For example,a user's identity, data associated therewith, and/or the like can betreated so that no personally identifiable information can be determinedfor the user, and/or the like. Thus, the user can have control over whatinformation is collected about the user, how that information is used,what information is provided to the user, and/or the like.

It will be appreciated that subject to user consent (e.g., regardingpotential privacy concerns, and/or the like), this can be performed inan automated fashion, for example, without receiving user input via theapplication associated with GUI 216 (e.g., the web browser, and/or thelike) indicating a desire to be able to utilize data based at least inpart on the information (e.g., presented by and/or input into the webbrowser, and/or the like) in the application associated with GUI 220(e.g., the messaging application, and/or the like). That is, thefunctionality need not be affirmatively invoked by the user (e.g., viaan OS clipboard command such as cut, copy, and/or the like) in order togenerate the suggested candidate input(s), provide the interfaceincluding the option(s) to select at least one of the suggestedcandidate input(s), and/or the like.

In some embodiments, computing device 10 can utilize a machine learning(ML) model to determine, for each of the suggested candidate input(s), apredicted likelihood that the user will select the suggested candidateinput via the interface (e.g., in order to rank the suggested candidateinput(s) by their likelihood of being selected, identify one or more ofthe suggested candidate input(s) likely to be selected, and/or thelike). In some of such embodiments, computing device 10 can determine,for each of the suggested candidate input(s) for which a selectionoption is provided in the interface, to include the selection option forthe suggested candidate input in the interface based at least in part onthe predicted likelihood that the user will select it. For example,computing device 10 can utilize an ML model to determine a likelihoodthat the user will select the suggested candidate input corresponding toelement 222 (e.g., “Slice House,” and/or the like), a likelihood thatthe user will select the suggested candidate input corresponding toelement 224 (e.g., “not to,” and/or the like), as well as one or morelikelihoods that the user will select one or more other suggestedcandidate inputs generated by computing device 10, and computing device10 can determine to include, in the input interface, the options forselecting the suggested candidate input(s) corresponding to elements 222and 224 based at least in part on the determined likelihoods that theuser will select them (e.g., in lieu of the other suggested candidateinput(s) generated by computing device 10, and/or the like).

In some embodiments, for each of one or more of the suggested candidateinput(s), computing device 10 can determine the predicted likelihoodthat the user will select the suggested candidate input based at leastin part on data identifying the application for which the suggestedcandidate input was generated, a selected input field of suchapplication, and/or the like. For example, computing device 10 candetermine the predicted likelihood that the user will select thesuggested candidate input corresponding to element 222 (e.g., “SliceHouse,” and/or the like) based at least in part on data identifying theapplication associated with GUI 220, the field corresponding to element206 of GUI 220, and/or the like.

In some embodiments, computing device 10 can annotate one or more of thesuggested candidate input(s) with metadata determined based at least inpart on factual knowledge about the user (e.g., their name, theirschedule availability, and/or the like), factual knowledge about aphysical environment in which computing device 10 is located (e.g.,facts about its current geographic location, such as the names ofstreets, businesses, and/or the like, facts about society, such as thenames, titles, characteristics, and/or the like of famous people,entities, organizations, places, events, and/or the like), a portion ofthe information provided by and/or input into the application(s)executed by computing device 10, and/or the like. In some of suchembodiments, for each of the annotated suggested candidate input(s),computing device 10 can determine the predicted likelihood that the userwill select the suggested candidate input based at least in part on itsmetadata.

Additionally or alternatively, for each of one or more of the suggestedcandidate input(s), computing device 10 can generate one or more numericdescriptions of one or more features of the suggested candidate inputdistinct from its content. For example, such features can include a typeof societal entity (e.g., person, organization, business, and/or thelike) associated with the suggested candidate input, how recently and/orhow frequently the content of the suggested candidate input waspresented by computing device 10, and/or the like. In some embodiments,for each of such suggested candidate input(s), computing device 10 candetermine the predicted likelihood that the user will select thesuggested candidate input based at least in part on one or more of itscorresponding numeric description(s).

In some embodiments, for each of such suggested candidate input(s),computing device 10 can generate a training record for the ML modelbased at least in part on the numeric description(s) for the suggestedcandidate input, whether the user selected the suggested candidateinput, and/or the like. For example, such training record(s) can enablethe ML model to more accurately process inputs based at least in part ontheir generic characteristics, contexts, structures, and/or the like.Additionally or alternatively, such training record(s) can omit,obscure, and/or the like the content of the suggested candidateinput(s), the information presented by and/or input into theapplication(s), and/or the like, which can, for example, mitigateprivacy concerns (e.g., in the context of a federated-learning paradigm,and/or the like). In some embodiments, a training record can begenerated based at least in part on a determination that the usermanually input data corresponding to content of the suggested candidateinput (e.g., typed out “Slice House” via element 214, and/or the like),for example, in lieu of selecting the suggested candidate input via theinterface (e.g., by invoking element 222, and/or the like). For example,such a record can indicate the suggested candidate input was accurate,correct, and/or the like even if the user failed to select the suggestedcandidate input.

In some embodiments, the ML model can be based at least in part on datagenerated by multiple different users' computing devices, for example,via a federated-learning paradigm, and/or the like. For example,computing devices 10, 20, 30, 40, and/or 50 can be associated with afederated-learning paradigm coordinated by computing system 112, and/orthe like (e.g., to discover patterns by which users select, ignore,and/or the like suggested candidate inputs having particularcharacteristics, provided in certain contexts, and/or the like).Computing devices 10, 20, 30, 40, and/or 50 can receive an ML model fromcomputing system 112; generate suggested candidate inputs; utilize theML model to determine likelihoods that the suggested candidate inputswill be selected; generate training records based at least in part onthe generated suggested candidate inputs, their determined respectivelikelihoods of being selected, data indicating whether they wereselected, ignored, and/or the like; generate updates to the ML model(e.g., differentials, and/or the like) based at least in part on thetraining records; and communicate the updates to computing system 112,which can refine the ML model based at least in part on the updates andcommunicate the refined ML model (e.g., reflecting the wisdom of thegroup's experiences, and/or the like) to computing devices 10, 20, 30,40, and/or 50 for subsequent utilization, and/or the like.

In some embodiments, the ML model can be, otherwise include, and/or thelike various ML models, such as neural networks (e.g., deep neuralnetworks, and/or the like), other types of ML models, includingnon-linear models, linear models, multilayer models, and/or the like.Neural networks can include feed-forward neural networks, recurrentneural networks (e.g., long short-term memory recurrent neural networks,and/or the like), convolutional neural networks, other forms of neuralnetworks, and/or the like. In some embodiments, the ML model can betrained using supervised techniques, semi-supervised techniques,unsupervised techniques, and/or the like.

In some embodiments, the ML model can comprise a dynamic vocabularyrecurrent neural network, which can be configured to score the generatedsuggested candidate input(s) based at least in part on their likelihoodof being selected by the user. In some of such embodiments, the ML modelcan be conceptually structured such that a first side (e.g., theleft-hand side, and/or the like) takes in input tokens, data identifyingthe application for which the suggested candidate input(s) weregenerated, a selected input field of such application, and/or the like,and a second side (e.g., the right-hand side, and/or the like) takes inthe suggested candidate input(s), their annotated metadata, numericdescription(s), and/or the like. The first side can generate a next-wordembedding (e.g., via a recurrent neural network, and/or the like), thesecond side can embed the suggested candidate input(s) in the samevectorial space, and the network can output data (e.g., numericalvalues, and/or the like) for the suggested candidate input(s) indicatingtheir respective similarities to the next-word embedding, and/or thelike.

In some embodiments, the suggested candidate input(s) can include asuggested candidate input comprising data configured to cause anapplication different and distinct from the application for which thesuggested candidate input(s) were generated to output content related tothe information presented by and/or input into the application(s)executed by computing device 10. In some of such embodiments, thedifferent and distinct application can be executed by a computing devicedifferent and distinct from computing device 10.

For example, referring to FIG. 2D, as previously indicated, the user ofcomputing device 10 can switch to an application (e.g., the messagingapplication, and/or the like) associated with GUI 226 (e.g., to resumecommunicating with Joe Friend, and/or the like); computing device 10 cangenerate data describing GUI 226, which can be presented by the displayof computing device 10, and/or the like; computing device 10 can receivedata indicating information presented via element 204 of GUI 226 by theapplication associated with GUI 226 (e.g., “You up for lunch?”, “Sure,”“What you thinking?”, “How about pizza?”, “Sounds good,” and/or thelike) and/or data indicating information input via element 206 of GUI226 into the application associated with GUI 220 (e.g., “Let's try,”and/or the like); and based at least in part on the data indicating theinformation presented via element 218 (e.g., the text from the websitepertaining to the restaurant, and/or the like), the data indicating theinformation presented via element 204, and/or the data indicating theinformation input via element 206, computing device 10 can generate oneor more suggested candidate inputs that the user of computing device 10may desire to input into the application associated with GUI 226 via afield corresponding to element 206 of GUI 226, and/or the like. Aspreviously indicated, in some embodiments, one or more of the suggestedcandidate input(s) (e.g., “Slice House,” and/or the like) can includemetadata determined based at least in part on one or more entities(e.g., the restaurant, the website pertaining to the restaurant, and/orthe like) associated with such suggested candidate input(s). In some ofsuch embodiments, the metadata can comprise one or more GUI interfaceelements, for example, graphics, icons, and/or the like (e.g., an imageof a pizza slice, such as one from the website pertaining to therestaurant, and/or the like).

Computing device 10 can be different and distinct from computing device20, which can, for example, be utilized by a different user (e.g., JoeFriend, and/or the like). The generated suggested candidate input(s) caninclude a suggested candidate input (e.g., data object, hyperlink,and/or the like) configured to cause an application (e.g., a webbrowser, and/or the like) executed by computing device 20 to outputcontent related to the information presented by and/or input into theapplication associated with GUI 226, for example, to output theinformation presented via element 218 (e.g., the website pertaining tothe restaurant, and/or the like). The input interface provided bycomputing device 10 can include an option to select the suggestedcandidate input configured to cause the application executed bycomputing device 20 to output such content. For example, GUI 226 caninclude element 228, which can correspond to such an option. The user ofcomputing device 10 can utilize the interface (e.g., invoke element 228,and/or the like) to select the suggested candidate input configured tocause the application executed by computing device 20 to output therelated content, and computing device 10 can receive data indicating thesame. Responsive to receiving such data, computing device 10 cancommunicate, to the application associated with GUI 226 (e.g., bypopulating the field corresponding to element 206 with the data object,hyperlink, and/or the like), data indicating the suggested candidateinput configured to cause the application executed by computing device20 to output the related content.

In some embodiments, the suggested candidate input(s) can include asuggested candidate input comprising data configured in accordance witha predetermined format, and/or the like. For example, referring to FIG.2E, the user of computing device 10 can utilize an application (e.g.,the messaging application, and/or the like) associated with GUI 230(e.g., to communicate with Joe Friend, and/or the like); computingdevice 10 can generate data describing GUI 230, which can be presentedby the display of computing device 10, and/or the like; computing device10 can receive data indicating information presented via element 204 ofGUI 230 by the application associated with GUI 230 (e.g., “What youthinking?”, “How about pizza?”, “Sounds good,” “Let's try Slice House,”and/or the like) and/or data indicating information input via element206 of GUI 230 into the application associated with GUI 230 (e.g.,“Please call ahead. Their number is,” and/or the like); and based atleast in part on the data indicating the information presented viaelement 218 (e.g., the text from the website pertaining to therestaurant, and/or the like), the data indicating the informationpresented via element 204, and/or the data indicating the informationinput via element 206, computing device 10 can generate one or moresuggested candidate inputs (e.g., “(123) 456-7890,” “online,” “in mybook,” and/or the like) that the user of computing device 10 may desireto input into the application associated with GUI 230 via a fieldcorresponding to element 206 of GUI 230, and/or the like.

The generated suggested candidate input(s) can include a suggestedcandidate input (e.g., “(123) 456-7890,” and/or the like) comprisingdata configured in accordance with a predetermined format (e.g., a phonenumber, and/or the like). The input interface provided by computingdevice 10 can include one or more options for selecting at least one ofthe suggested candidate input(s). For example, GUI 230 can includeelements 232, 234, and 236, which can correspond to options forselecting one or more of the generated suggested candidate input(s)(e.g., “(123) 456-7890,” “online,” “in my book,” and/or the like). Theoption(s) can include an option for selecting the suggested candidateinput comprising the data configured in accordance with thepredetermined format. For example, GUI 230 can include element 232,which can correspond to an option for selecting the suggested candidateinput comprising the data configured in accordance with thepredetermined format (e.g., “(123) 456-7890,” and/or the like).

As previously indicated, in some embodiments, computing device 10 candetermine (e.g., utilizing the ML model, and/or the like), for each ofthe suggested candidate input(s), a predicted likelihood that the userwill select the suggested candidate input via the interface. In some ofsuch embodiments, for one or more of the suggested candidate input(s)(e.g., the suggested candidate input(s) for which selection option(s)will be included in the interface, and/or the like), computing device 10can determine one or more prominences within the interface of one ormore of the option(s) for selecting the suggested candidate input(s)based at least in part on the likelihood that the user will select thesuggested candidate input(s).

For example, computing device 10 can determine one or more sizes ofelement(s) 224, 228, 232, 234, and/or 236 based at least in part on thelikelihood that the user will select their corresponding suggestedcandidate input(s). In some embodiments, computing device 10 candetermine an element (e.g., element 228, and/or the like) correspondingto a suggested candidate input with a higher likelihood of beingselected should have a larger size than an element (e.g., element 224,and/or the like) corresponding to a suggested candidate input with alower likelihood of being selected, and/or the like. Additionally oralternatively, computing device 10 can determine a number of elements(e.g., corresponding to one or more other (or alternative) suggestedcandidate inputs, and/or the like) to be presented alongside an elementbased at least in part on the likelihood that the user will select thesuggested candidate input corresponding to the element. For example, insome embodiments, computing device 10 can determine to present fewerelements (e.g., element 224, and/or the like) alongside an element(e.g., element 228, and/or the like) corresponding to a suggestedcandidate input with a higher likelihood of being selected in comparisonwith a number of elements (e.g., elements 234, 236, and/or the like)determined by computing device 10 to be presented alongside an element(e.g., element 232, and/or the like) corresponding to a suggestedcandidate input with a lower likelihood of being selected, and/or thelike.

The user of computing device 10 can utilize the interface (e.g., invokeelement 232, and/or the like) to select the suggested candidate inputcomprising the data configured in accordance with the predeterminedformat, and computing device 10 can receive data indicating the same.Responsive to receiving such data, computing device 10 can communicate,to the application associated with GUI 230 (e.g., by populating thefield corresponding to element 206 with “(123) 456-7890,” and/or thelike), data indicating the suggested candidate input comprising the dataconfigured in accordance with the predetermined format.

As previously indicated, in some embodiments, the suggested candidateinput(s) can include a suggested candidate input comprising dataconfigured to cause an application different and distinct from theapplication for which the suggested candidate input(s) were generated tooutput content related to the information presented by and/or input intothe application(s) executed by computing device 10. In some of suchembodiments, the different and distinct application can be executed bycomputing device 10.

For example, referring to FIG. 2F, the user of computing device 10 canutilize an application (e.g., the messaging application, and/or thelike) associated with GUI 238 (e.g., to communicate with Joe Friend,and/or the like); computing device 10 can generate data describing GUI238, which can be presented by the display of computing device 10,and/or the like; computing device 10 can receive data indicatinginformation presented via element 204 of GUI 238 by the applicationassociated with GUI 238 (e.g., “What you thinking?”, “How about pizza?”,“Sounds good,” “Let's try Slice House,” and/or the like) and/or dataindicating information input via element 206 of GUI 238 into theapplication associated with GUI 238 (e.g., “Please call ahead. Theirnumber is,” and/or the like); and based at least in part on the dataindicating the information presented via element 218 (e.g., the textfrom the website pertaining to the restaurant, and/or the like), thedata indicating the information presented via element 204, and/or thedata indicating the information input via element 206, computing device10 can generate one or more suggested candidate inputs that the user ofcomputing device 10 may desire to input into the application associatedwith GUI 238 via a field corresponding to element 206 of GUI 238, and/orthe like.

The generated suggested candidate input(s) can include a suggestedcandidate input (e.g., data object, hyperlink, and/or the like)configured to cause a different and distinct application (e.g., acontact-management application, and/or the like) executed by computingdevice 10 to output content related to the information presented byand/or input into the application associated with GUI 238, for example,to output the information presented via element 218 (e.g., a portion ofthe text from the website pertaining to the restaurant, and/or thelike). The input interface provided by computing device 10 can includean option to select the suggested candidate input configured to causethe different and distinct application to output such content. Forexample, GUI 238 can include element 240, which can correspond to suchan option. The user of computing device 10 can utilize the interface(e.g., invoke element 240, and/or the like) to select the suggestedcandidate input configured to cause the different and distinctapplication to output the related content, and computing device 10 canreceive data indicating the same. Responsive to receiving such data,computing device 10 can communicate (e.g., by populating the fieldcorresponding to element 206 with the data object, hyperlink, and/or thelike), data indicating the suggested candidate input configured to causethe different and distinct application to output the related content.

Based at least in part on such communication, computing device 10 caninvoke the different and distinct application (e.g., thecontact-management application, and/or the like), cause such applicationto output the related content, and/or the like. For example, referringto FIG. 2G, computing device 10 can generate data describing GUI 242,which can be presented by the display of computing device 10, and/or thelike. GUI 242 can include element 244, which can be associated with thedifferent and distinct application and/or include the related content(e.g., the portion of the text from the website pertaining to therestaurant, and/or the like).

As previously indicated, in some embodiments, the suggested candidateinput(s) can include a suggested candidate input comprising dataconfigured in accordance with a predetermined format, and/or the like.For example, referring to FIG. 2H, the user of computing device 10 canutilize an application (e.g., the messaging application, and/or thelike) associated with GUI 246 (e.g., to communicate with Joe Friend,and/or the like); computing device 10 can generate data describing GUI246, which can be presented by the display of computing device 10,and/or the like; computing device 10 can receive data indicatinginformation presented via element 204 of GUI 246 by the applicationassociated with GUI 246 (e.g., “What you thinking?”, “How about pizza?”,“Sounds good,” “Let's try Slice House,” and/or the like) and/or dataindicating information input via element 206 of GUI 246 into theapplication associated with GUI 246 (e.g., “The address is,” and/or thelike); and based at least in part on the data indicating the informationpresented via element 218 (e.g., the text from the website pertaining tothe restaurant, and/or the like), the data indicating the informationpresented via element 204, and/or the data indicating the informationinput via element 206, computing device 10 can generate one or moresuggested candidate inputs (e.g., “123 Main Street,” “online,” “in mybook,” and/or the like) that the user of computing device 10 may desireto input into the application associated with GUI 246 via a fieldcorresponding to element 206 of GUI 246, and/or the like.

The generated suggested candidate input(s) can include a suggestedcandidate input (e.g., “123 Main Street,” and/or the like) comprisingdata configured in accordance with a predetermined format (e.g., anaddress, and/or the like). The input interface provided by computingdevice 10 can include an option for selecting the suggested candidateinput comprising the data configured in accordance with thepredetermined format. For example, GUI 246 can include element 248,which can correspond to an option for selecting the suggested candidateinput comprising the data configured in accordance with thepredetermined format (e.g., “123 Main Street,” and/or the like).

The user of computing device 10 can utilize the interface (e.g., invokeelement 248, and/or the like) to select the suggested candidate inputcomprising the data configured in accordance with the predeterminedformat, and computing device 10 can receive data indicating the same.Responsive to receiving such data, computing device 10 can communicate,to the application associated with GUI 246 (e.g., by populating thefield corresponding to element 206 with “123 Main Street,” and/or thelike), data indicating the suggested candidate input comprising the dataconfigured in accordance with the predetermined format.

As previously indicated, in some embodiments, the suggested candidateinput(s) can include a suggested candidate input comprising dataconfigured to cause an application different and distinct from theapplication for which the suggested candidate input(s) were generated tooutput content related to the information presented by and/or input intothe application(s) executed by computing device 10. In some of suchembodiments, the different and distinct application can be executed by acomputing device different and distinct from computing device 10.

For example, referring to FIG. 2I, the user of computing device 10 canutilize an application (e.g., the messaging application, and/or thelike) associated with GUI 250 (e.g., to communicate with Joe Friend,and/or the like); computing device 10 can generate data describing GUI250, which can be presented by the display of computing device 10,and/or the like; computing device 10 can receive data indicatinginformation presented via element 204 of GUI 250 by the applicationassociated with GUI 250 (e.g., “What you thinking?”, “How about pizza?”,“Sounds good,” “Let's try Slice House,” and/or the like) and/or dataindicating information input via element 206 of GUI 250 into theapplication associated with GUI 250 (e.g., “The address is,” and/or thelike); and based at least in part on the data indicating the informationpresented via element 218 (e.g., the text from the website pertaining tothe restaurant, and/or the like), the data indicating the informationpresented via element 204, and/or the data indicating the informationinput via element 206, computing device 10 can generate one or moresuggested candidate inputs that the user of computing device 10 maydesire to input into the application associated with GUI 250 via a fieldcorresponding to element 206 of GUI 250, and/or the like.

As previously indicated, computing device 10 can be different anddistinct from computing device 20, which can, for example, be utilizedby a different user (e.g., Joe Friend, and/or the like). The generatedsuggested candidate input(s) can include a suggested candidate input(e.g., data object, hyperlink, and/or the like) configured to cause anapplication (e.g., a mapping application, and/or the like) executed bycomputing device 20 to output content related to the informationpresented by and/or input into the application associated with GUI 250,for example, to output information (e.g., a map, and/or the like) basedat least in part on the information presented via element 218 (e.g., theaddress included in the text from the website pertaining to therestaurant, and/or the like). The input interface provided by computingdevice 10 can include an option to select the suggested candidate inputconfigured to cause the application executed by computing device 20 tooutput such content. For example, GUI 250 can include element 252, whichcan correspond to such an option. The user of computing device 10 canutilize the interface (e.g., invoke element 252, and/or the like) toselect the suggested candidate input configured to cause the applicationexecuted by computing device 20 to output the related content, andcomputing device 10 can receive data indicating the same. Responsive toreceiving such data, computing device 10 can communicate, to theapplication associated with GUI 250 (e.g., by populating the fieldcorresponding to element 206 with the data object, hyperlink, and/or thelike), data indicating the suggested candidate input configured to causethe application executed by computing device 20 to output the relatedcontent.

Additionally or alternatively, the different and distinct applicationcan be executed by computing device 10. For example, referring to FIG.2J, the user of computing device 10 can utilize an application (e.g.,the messaging application, and/or the like) associated with GUI 254(e.g., to communicate with Joe Friend, and/or the like); computingdevice 10 can generate data describing GUI 254, which can be presentedby the display of computing device 10, and/or the like; computing device10 can receive data indicating information presented via element 204 ofGUI 254 by the application associated with GUI 254 (e.g., “How aboutpizza?”, “Sounds good,” “Let's try Slice House,” “Remember last time?”,and/or the like) and/or data indicating information input via element206 of GUI 254 into the application associated with GUI 254 (e.g.,“Here's a pic,” and/or the like); and based at least in part on the dataindicating the information presented via element 218 (e.g., the textfrom the website pertaining to the restaurant, and/or the like), thedata indicating the information presented via element 204, and/or thedata indicating the information input via element 206, computing device10 can generate one or more suggested candidate inputs that the user ofcomputing device 10 may desire to input into the application associatedwith GUI 254 via a field corresponding to element 206 of GUI 254, and/orthe like.

The generated suggested candidate input(s) can include one or moresuggested candidate inputs (e.g., data objects, hyperlinks, and/or thelike) configured to cause a different and distinct application (e.g., apicture-management application, and/or the like) executed by computingdevice 10 to output content related to the information presented byand/or input into the application associated with GUI 254 (e.g., one ormore pictures related to the messages communicated with Joe Friend,and/or the like). The input interface provided by computing device 10can include one or more options to select the suggested candidateinput(s) configured to cause the different and distinct application tooutput such content. For example, GUI 254 can include elements 256 and258, which can correspond to such option(s). The user of computingdevice 10 can utilize the interface (e.g., invoke element 256, and/orthe like) to select one of the suggested candidate input(s) configuredto cause the different and distinct application to output the relatedcontent, and computing device 10 can receive data indicating the same.Responsive to receiving such data, computing device 10 can communicate(e.g., by populating the field corresponding to element 206 with thedata object, hyperlink, and/or the like), data indicating the selectedsuggested candidate input configured to cause the different and distinctapplication to output the related content.

Based at least in part on such communication, computing device 10 caninvoke the different and distinct application (e.g., thepicture-management application, and/or the like), cause such applicationto output the related content, and/or the like. For example, referringto FIG. 2K, computing device 10 can generate data describing GUI 260,which can be presented by the display of computing device 10, and/or thelike. GUI 260 can include element 262, which can be associated with thedifferent and distinct application and/or include the related content(e.g., the picture(s) related to the messages communicated with JoeFriend, and/or the like).

Similarly, referring to FIG. 2L, the user of computing device 10 canutilize an application (e.g., the messaging application, and/or thelike) associated with GUI 264 (e.g., to communicate with Joe Friend,and/or the like); computing device 10 can generate data describing GUI264, which can be presented by the display of computing device 10,and/or the like; computing device 10 can receive data indicatinginformation presented via element 204 of GUI 264 by the applicationassociated with GUI 264 (e.g., “How about pizza?”, “Sounds good,” “Let'stry Slice House,” “How about noon?”, “cya then,” and/or the like) and/ordata indicating information input via element 206 of GUI 264 into theapplication associated with GUI 264 (e.g., “Okay,” and/or the like); andbased at least in part on the data indicating the information presentedvia element 218 (e.g., the text from the website pertaining to therestaurant, and/or the like), the data indicating the informationpresented via element 204, and/or the data indicating the informationinput via element 206, computing device 10 can generate one or moresuggested candidate inputs that the user of computing device 10 maydesire to input into the application associated with GUI 264 via a fieldcorresponding to element 206 of GUI 264, and/or the like.

As previously indicated, the generated suggested candidate input(s) caninclude a suggested candidate input (e.g., data object, hyperlink,and/or the like) configured to cause a different and distinctapplication (e.g., a calendar application, and/or the like) executed bycomputing device 10 to output content related to the informationpresented by and/or input into the application associated with GUI 264(e.g., a calendar entry for the planned lunch with Joe Friend at therestaurant, and/or the like). The input interface provided by computingdevice 10 can include an option to select the suggested candidate inputconfigured to cause the different and distinct application to outputsuch content. For example, GUI 264 can include element 266, which cancorrespond to such an option. The user of computing device 10 canutilize the interface (e.g., invoke element 266, and/or the like) toselect the suggested candidate input configured to cause the differentand distinct application to output the related content, and computingdevice 10 can receive data indicating the same. Responsive to receivingsuch data, computing device 10 can communicate (e.g., by populating thefield corresponding to element 206 with the data object, hyperlink,and/or the like), data indicating the suggested candidate inputconfigured to cause the different and distinct application to output therelated content.

Based at least in part on such communication, computing device 10 caninvoke the different and distinct application (e.g., the calendarapplication, and/or the like), cause such application to output therelated content, and/or the like. For example, referring to FIG. 2M,computing device 10 can generate data describing GUI 268, which can bepresented by the display of computing device 10, and/or the like. GUI268 can include element 270, which can be associated with the differentand distinct application and/or include the related content (e.g., thecalendar entry for the planned lunch with Joe Friend at the restaurant,and/or the like).

As previously indicated, the user of computing device 10 can switchbetween the different and distinct application(s) executed by computingdevice 10, for example, to perform various functions with respect to anundertaken task, and/or the like. For example, referring to FIG. 2N, theuser of computing device 10 (e.g., as the time for the scheduled lunchwith Joe Friend approaches, and/or the like) can utilize an application(e.g., a car-service application, and/or the like) associated with GUI272 (e.g., to request a car to travel to the lunch with Joe Friend,and/or the like); computing device 10 can generate data describing GUI272, which can be presented by the display of computing device 10,and/or the like; computing device 10 can receive data indicatinginformation presented via element 274 of GUI 272 by the applicationassociated with GUI 272 (e.g., “<Enter a New Address Here>,” and/or thelike); and based at least in part on the data indicating the informationpresented via element 218 (e.g., the text from the website pertaining tothe restaurant, and/or the like), data indicating information presentedvia element 270 (e.g., the calendar entry for the planned lunch with JoeFriend at the restaurant, and/or the like), the data indicating theinformation presented via element 274, the data indicating theinformation presented via element 204, and/or the data indicating theinformation input via element 206, computing device 10 can generate oneor more suggested candidate inputs (e.g., “(Slice House) 123 MainStreet, Small City, Big State 12345,” “456 2nd St,” and/or the like)that the user of computing device 10 may desire to input into theapplication associated with GUI 272 via a field corresponding to element274 of GUI 272, and/or the like.

As previously indicated, in some embodiments, computing device 10 candetermine (e.g., utilizing the ML model, and/or the like), for each ofthe suggested candidate input(s), a predicted likelihood that the userwill select the suggested candidate input via the interface. In some ofsuch embodiments, for each of one or more of the suggested candidateinput(s), computing device 10 can determine the predicted likelihoodthat the user will select the suggested candidate input based at leastin part on data identifying the application for which the suggestedcandidate input was generated, a selected input field of suchapplication, and/or the like. For example, computing device 10 candetermine there is a high likelihood the user of computing device 10will select a particular suggested candidate input (e.g., “(Slice House)123 Main Street, Small City, Big State 12345,” and/or the like) based atleast in part on data identifying the application associated with GUI272 (e.g., the car-service application, and/or the like) and/or thefield corresponding to element 274 (e.g., a destination-address field,and/or the like).

The input interface provided by computing device 10 can include one ormore options to select at least one of the suggested candidate input(s).For example, GUI 272 can include elements 276 and 278, which cancorrespond to options for selecting one or more of the generatedsuggested candidate input(s) (e.g., “(Slice House) 123 Main Street,Small City, Big State 12345,” “456 2nd St,” and/or the like). The userof computing device 10 can utilize the interface to select one of thesuggested candidate input(s), and computing device 10 can receive dataindicating the same. For example, the user of computing device 10 canutilize the interface (e.g., invoke element 276, and/or the like) toselect the suggested candidate input (e.g., “(Slice House) 123 MainStreet, Small City, Big State 12345,” and/or the like) corresponding toelement 276, and computing device 10 can receive data indicating theselected suggested candidate input. Responsive to receiving such data,computing device 10 can communicate data indicating the selectedsuggested candidate input to the application. For example, responsive toreceiving the data indicating the user of computing device 10 hasselected the suggested candidate input (e.g., “(Slice House) 123 MainStreet, Small City, Big State 12345,” and/or the like) corresponding toelement 276, computing device 10 can communicate data indicating theselected suggested candidate input to the application associated withGUI 272 (e.g., by populating the field corresponding to element 274 with“(Slice House) 123 Main Street, Small City, Big State 12345,” and/or thelike).

FIGS. 3A-D depict additional example GUIs according to exampleembodiments of the present disclosure.

Referring to FIG. 3A, GUIs 302, 304, and 306 illustrate an example usecase. For example, GUI 302 depicts an example of a user utilizing aweb-browser application (e.g., to research a restaurant, and/or thelike); GUI 304 depicts an example of the user being provided, inassociation with a messenger application, an interface that includes anoption for selecting a suggested candidate input, for example,referencing information presented via the web-browser application (e.g.,from a website pertaining to the restaurant, and/or the like), generatedbased at least in part on information presented by and/or input into theweb-browser application (e.g., “GARDEN CREAMERY,” and/or the like)and/or information presented by and/or input into the messengerapplication (e.g., “LET'S HAVE DINNER AT,” and/or the like); and GUI 306depicts an example of the user being provided, in association with themessenger application, an interface that includes an option forselecting a suggested candidate input configured to cause a differentand distinct application (e.g., a web-browser application executed by acomputing device of “CAMERON LUCE,” and/or the like) to output content(e.g., the website pertaining to the restaurant, and/or the like)related to the information presented by and/or input into theweb-browser and/or messenger application(s) executed by the computingdevice(s) of the user.

Referring to FIG. 3B, GUIs 308, 310, and 312 illustrate an additionalexample use case. For example, GUI 308 depicts an example of a userutilizing a messenger application (e.g., to communicate with “REBECCABARBER,” and/or the like); GUI 310 depicts an example of the user beingprovided, in association with a mapping application, an interface thatincludes an option for selecting a suggested candidate input, forexample, referencing information presented via the messenger application(e.g., an address, and/or the like), generated based at least in part oninformation presented by and/or input into the messenger application(e.g., “I'M AT 1501 W. 152ND AVE SE,” and/or the like) and/orinformation presented by and/or input into the mapping application(e.g., “SEARCH HERE,” and/or the like); and GUI 312 depicts an exampleof the mapping application outputting content (e.g., a map of the areareferenced by the address, and/or the like) related to the informationpresented by and/or input into the messenger and/or mappingapplication(s).

Referring to FIG. 3C, GUIs 314, 316, and 318 illustrate a furtherexample use case. For example, GUI 314 depicts an example of a userbeing presented (e.g., in association with a home screen, and/or thelike) with a notification of a messenger application (e.g., regarding amessage from “REBECCA BARBER,” and/or the like); GUI 316 depicts anexample of the user being provided, in association with the messengerapplication, an interface that includes an option for selecting asuggested candidate input, for example, generated based at least in parton information presented by and/or input into the messenger application(e.g., “REBECCA BARBER,” “SEE YOU ON FRIDAY AT 8 AM,” and/or the like)and/or configured to cause a different and distinct application (e.g., acalendar application, and/or the like) to output content (e.g., anoption to create a new calendar entry, and/or the like) related to theinformation presented by and/or input into the messenger application;and GUI 318 depicts an example of the calendar application beingpresented in association with the messenger application and outputtingthe content (e.g., the option to create the new calendar entry, and/orthe like) related to the information presented by and/or input into themessenger application.

Referring to FIG. 3D, GUIs 320, 322, and 324 illustrate a furtherexample use case. For example, GUI 320 depicts an example of a userbeing presented (e.g., in association with a home screen, and/or thelike) with a notification of a messenger application (e.g., regarding amessage from “BOB SMITH,” and/or the like); GUI 322 depicts an exampleof the user being provided, in association with the messengerapplication, an interface that includes an option for selecting asuggested candidate input, for example, generated based at least in parton information presented by and/or input into the messenger application(e.g., “SEND PICS OF OUR TRIP TO EGYPT POR FAVOR!,” and/or the like)and/or configured to cause a different and distinct application (e.g., apicture-management application, and/or the like) to output content(e.g., pictures from an album entitled “TRIP TO EGYPT,” and/or the like)related to the information presented by and/or input into the messengerapplication; and GUI 324 depicts an example of the picture-managementapplication being presented in association with the messengerapplication and outputting the content (e.g., the pictures from thealbum entitled “TRIP TO EGYPT,” and/or the like) related to theinformation presented by and/or input into the messenger application.

FIG. 4 depicts example GUI elements according to example embodiments ofthe present disclosure.

Referring to FIG. 4 , as previously indicated, in some embodiments,computing device 10 can determine (e.g., utilizing the ML model, and/orthe like), for each of the suggested candidate input(s), a predictedlikelihood that the user will select the suggested candidate input viathe interface. In some of such embodiments, for one or more of thesuggested candidate input(s) (e.g., the suggested candidate input(s) forwhich selection option(s) will be included in the interface, and/or thelike), computing device 10 can determine one or more prominences withinthe interface of one or more of the option(s) for selecting thesuggested candidate input(s) based at least in part on the likelihoodthat the user will select the suggested candidate input(s).

For example, elements 402, 404, 406, 408, 410, and 412 can correspond tooptions for selecting various different suggested candidate inputs(e.g., “FIELDHOUSE,” “FIELD HOUSE,” “FIELDHAUS,” “(206) 555-1234,”“(206) 555-5678,” “(206) 555-1101,” and/or the like). Computing device10 can determine one or more sizes of element(s) 402, 404, 406, 408,410, and/or 412 based at least in part on the likelihood that the userwill select their corresponding suggested candidate input(s). In someembodiments, computing device 10 can determine an element (e.g., element412, and/or the like) corresponding to a suggested candidate input witha higher likelihood of being selected should have a larger size than anelement (e.g., element 408, and/or the like) corresponding to asuggested candidate input with a lower likelihood of being selected,and/or the like. Similarly, computing device 10 can determine an element(e.g., element 408, and/or the like) corresponding to a suggestedcandidate input with a higher likelihood of being selected should have alarger size font than an element (e.g., element 410, and/or the like)corresponding to a suggested candidate input with a lower likelihood ofbeing selected, and/or the like.

Additionally or alternatively, computing device 10 can determine anumber of elements (e.g., corresponding to one or more other (oralternative) suggested candidate inputs, and/or the like) to bepresented alongside an element based at least in part on the likelihoodthat the user will select the suggested candidate input corresponding tothe element. For example, in some embodiments, computing device 10 candetermine to present fewer elements (e.g., element 410, and/or the like)alongside an element (e.g., element 408, and/or the like) correspondingto a suggested candidate input with a higher likelihood of beingselected in comparison with a number of elements (e.g., elements 404,406, and/or the like) determined by computing device 10 to be presentedalongside an element (e.g., element 402, and/or the like) correspondingto a suggested candidate input with a lower likelihood of beingselected, and/or the like.

FIG. 5 depicts example use cases according to example embodiments of thepresent disclosure.

Referring to FIG. 5 , scene 502 depicts an example of a user utilizing amessenger application (e.g., to communicate with “REBECCA BARBER,”and/or the like) and a calendar application (e.g., to check theiravailability, and/or the like). As illustrated, the user can beprovided, in association with the messenger application, an interfacethat includes one or more options for selecting one or more suggestedcandidate inputs (e.g., “I'm Free,” “All Clear,” and/or the like), forexample, generated based at least in part on information presented byand/or input into the messenger application (e.g., “Actually, let's makeit 7 pm Friday,” and/or the like) and/or information presented by and/orinput into the calendar application (e.g., “FRI,” “7 PM,” <no calendarentry>, and/or the like).

Scene 504 depicts an example of a user utilizing a messenger applicationand a mapping application (e.g., to check the location of “GardenCreamery,” and/or the like). As illustrated, the user can be provided,in association with the messenger application, an interface thatincludes one or more options for selecting one or more suggestedcandidate inputs (e.g., “cya in 10,” and/or the like), for example,generated based at least in part on information presented by and/orinput into the messenger application (e.g., “How does Garden CreamerySound? Is that close enough to you?”, and/or the like) and/orinformation presented by and/or input into the mapping application(e.g., the distance from the user's current location to “GardenCreamery,” and/or the like).

Scene 506 depicts an example of a user utilizing a messenger applicationand a picture-management application (e.g., to select one or morepictures for communication via the messenger application, and/or thelike). As illustrated, the user can be provided, in association with themessenger application, an interface that includes one or more optionsfor selecting one or more suggested candidate inputs (e.g., “OrcasIsland,” “Here's the album,” and/or the like), for example, generatedbased at least in part on information presented by and/or input into themessenger application (e.g., “Can you send me the Orcas Island photosfrom our trip?”, and/or the like) and/or information presented by and/orinput into the picture-management application (e.g., selection of one ormore photos, and/or the like). As previously indicated, one or more ofthe suggested candidate input(s) (e.g., “Orcas Island,” and/or the like)for the messenger application can comprise data configured to cause adifferent and distinct application (e.g., the picture-managementapplication, an application comprising an interface for selectingpictures managed by the picture-management application, and/or the like)to output content (e.g., one or more photos from an album correspondingto “Orcas Island” for selection, and/or the like) related to theinformation presented by and/or input into the messenger application.For example, the interface for the picture-management application can beprovided in association with the messenger application in response tothe user invoking such an option.

Scene 508 depicts an example of a user utilizing a messenger applicationand a document-management application (e.g., to select one or moredocuments for communication via the messenger application, and/or thelike). As illustrated, the user can be provided, in association with themessenger application, an interface that includes one or more optionsfor selecting one or more suggested candidate inputs (e.g., “FINReport,” “Here's the doc,” and/or the like), for example, generatedbased at least in part on information presented by and/or input into themessenger application (e.g., “Can you send me the doc from the financialreview?”, and/or the like) and/or information presented by and/or inputinto the document-management application (e.g., selection of one or moredocuments, and/or the like). As previously indicated, one or more of thesuggested candidate input(s) (e.g., “FIN Report,” and/or the like) forthe messenger application can comprise data configured to cause adifferent and distinct application (e.g., the document-managementapplication, an application comprising an interface for selectingdocuments managed by the document-management application, and/or thelike) to output content (e.g., one or more documents corresponding to“FIN Report” for selection, and/or the like) related to the informationpresented by and/or input into the messenger application. For example,the interface for the document-management application can be provided inassociation with the messenger application in response to the userinvoking such an option.

Scene 510 depicts an example of a user utilizing a messenger applicationand an electronic-payment application (e.g., to send a payment to anindividual being communicated with via the messenger application, and/orthe like). As illustrated, the user can be provided, in association withthe messenger application, an interface that includes one or moreoptions for selecting one or more suggested candidate inputs (e.g., “$25For Dinner,” and/or the like), for example, generated based at least inpart on information presented by and/or input into the messengerapplication (e.g., “Dinner was $25,” and/or the like). As previouslyindicated, one or more of the suggested candidate input(s) (e.g., “$25For Dinner,” and/or the like) for the messenger application can comprisedata configured to cause a different and distinct application (e.g., theelectronic-payment application, an application comprising an interfacefor controlling the electronic-payment application, and/or the like) tooutput content (e.g., an option to send the payment to the individualfor selection, and/or the like) related to the information presented byand/or input into the messenger application. For example, the interfacefor the electronic-payment application can be provided in associationwith the messenger application in response to the user invoking such anoption.

FIG. 6 depicts an example method according to example embodiments of thepresent disclosure.

Referring to FIG. 6 , at (602), one or more computing devices canreceive data indicating information presented by and/or input into oneor more applications executed by the computing device(s). For example,computing device 10 can receive data indicating information presentedvia elements 204 and/or 218, input via element 206, and/or the like.

At (604), the computing device(s) can generate, based at least in parton the data indicating the information presented by and/or input intothe application(s), one or more suggested candidate inputs for anapplication executed by the computing device(s). For example, based atleast in part on the data indicating the information presented viaelements 204 and/or 218, input via element 206, and/or the like,computing device 10 can generate one or more suggested candidate inputs(e.g., “Slice House,” “not to,” and/or the like) for the applicationassociated with GUI 220, and/or the like.

At (606), the computing device(s) can provide, in association with theapplication for which the suggested candidate input(s) were generated,an interface that includes one or more options to select at least one ofthe suggested candidate input(s). For example, computing device 10 cangenerate data describing GUI 220, which can include elements 222 and224, can be presented by the display of computing device 10, and/or thelike.

At (608), the computing device(s) can receive data indicating aselection of one of the suggested candidate input(s). For example,computing device 10 can receive data indicating selection of thesuggested candidate input (e.g., “Slice House,” and/or the like)corresponding to element 222, and/or the like.

At (610), the computing device(s) can communicate, to the applicationfor which the suggested candidate input(s) were generated, dataindicating the selected suggested candidate input. For example,computing device 10 can communicate data indicating the selectedsuggested candidate input to the application associated with GUI 220(e.g., by populating the field corresponding to element 206 with “SliceHouse,” and/or the like).

The technology discussed herein makes reference to servers, databases,software applications, and/or other computer-based systems, as well asactions taken and information sent to and/or from such systems. Theinherent flexibility of computer-based systems allows for a greatvariety of possible configurations, combinations, and/or divisions oftasks and/or functionality between and/or among components. Forinstance, processes discussed herein can be implemented using a singledevice or component and/or multiple devices or components working incombination. Databases and/or applications can be implemented on asingle system and/or distributed across multiple systems. Distributedcomponents can operate sequentially and/or in parallel.

Various connections between elements are discussed in the abovedescription. These connections are general and, unless specifiedotherwise, can be direct and/or indirect, wired and/or wireless. In thisrespect, the specification is not intended to be limiting.

The depicted and/or described steps are merely illustrative and can beomitted, combined, and/or performed in an order other than that depictedand/or described; the numbering of depicted steps is merely for ease ofreference and does not imply any particular ordering is necessary orpreferred.

The functions and/or steps described herein can be embodied incomputer-usable data and/or computer-executable instructions, executedby one or more computers and/or other devices to perform one or morefunctions described herein. Generally, such data and/or instructionsinclude routines, programs, objects, components, data structures, or thelike that perform particular tasks and/or implement particular datatypes when executed by one or more processors in a computer and/or otherdata-processing device. The computer-executable instructions can bestored on a computer-readable medium such as a hard disk, optical disk,removable storage media, solid-state memory, read-only memory (RAM), orthe like. As will be appreciated, the functionality of such instructionscan be combined and/or distributed as desired. In addition, thefunctionality can be embodied in whole or in part in firmware and/orhardware equivalents, such as integrated circuits, application-specificintegrated circuits (ASICs), field-programmable gate arrays (FPGAs), orthe like. Particular data structures can be used to more effectivelyimplement one or more aspects of the disclosure, and such datastructures are contemplated to be within the scope ofcomputer-executable instructions and/or computer-usable data describedherein.

Although not required, one of ordinary skill in the art will appreciatethat various aspects described herein can be embodied as a method,system, apparatus, and/or one or more computer-readable media storingcomputer-executable instructions. Accordingly, aspects can take the formof an entirely hardware embodiment, an entirely software embodiment, anentirely firmware embodiment, and/or an embodiment combining software,hardware, and/or firmware aspects in any combination.

As described herein, the various methods and acts can be operativeacross one or more computing devices and/or networks. The functionalitycan be distributed in any manner or can be located in a single computingdevice (e.g., server, client computer, user device, or the like).

Aspects of the disclosure have been described in terms of illustrativeembodiments thereof. Numerous other embodiments, modifications, and/orvariations within the scope and spirit of the appended claims can occurto persons of ordinary skill in the art from a review of thisdisclosure. For example, one or ordinary skill in the art can appreciatethat the steps depicted and/or described can be performed in other thanthe recited order and/or that one or more illustrated steps can beoptional and/or combined. Any and all features in the following claimscan be combined and/or rearranged in any way possible.

While the present subject matter has been described in detail withrespect to various specific example embodiments thereof, each example isprovided by way of explanation, not limitation of the disclosure. Thoseskilled in the art, upon attaining an understanding of the foregoing,can readily produce alterations to, variations of, and/or equivalents tosuch embodiments. Accordingly, the subject disclosure does not precludeinclusion of such modifications, variations, and/or additions to thepresent subject matter as would be readily apparent to one of ordinaryskill in the art. For instance, features illustrated and/or described aspart of one embodiment can be used with another embodiment to yield astill further embodiment. Thus, it is intended that the presentdisclosure cover such alterations, variations, and/or equivalents.

What is claimed is:
 1. A computer-implemented method comprising:receiving, by one or more computing devices and from a first applicationexecuted by the one or more computing devices, data indicatinginformation that has been one or more of presented by or input into thefirst application; generating, by the one or more computing devices,based at least in part on the data indicating the information that hasbeen one or more of presented by or input into the first application,and without receiving user input via the first application indicating adesire to be able to utilize data based at least in part on theinformation in a second application executed by the one or morecomputing devices, one or more suggested candidate inputs for the secondapplication, the second application being different and distinct fromthe first application; providing, by the one or more computing devicesand in association with the second application, an interface comprisingone or more options to select at least one suggested candidate input ofthe one or more suggested candidate inputs; and responsive to receivingdata indicating a selection of a particular suggested candidate input ofthe one or more suggested candidate inputs via the interface,communicating, by the one or more computing devices and to the secondapplication, data indicating the particular suggested candidate input.2. The computer-implemented method of claim 1, wherein generating theone or more suggested candidate inputs comprises generating the one ormore suggested candidate inputs based at least in part on dataindicating information that has been one or more of presented by orinput into the second application.
 3. The computer-implemented method ofclaim 1, wherein receiving the data indicating the information comprisesreceiving the data indicating the information via a device-accessibilityapplication programming interface (API) of the one or more computingdevices.
 4. The computer-implemented method of claim 1, whereinreceiving the data indicating the information comprises: communicating,by the first application, the data indicating the information via anapplication programming interface (API) of the one or more computingdevices configured to manage a file-based application-indexing logstored on the one or more computing devices and comprising dataindicating one or more application actions or events; and retrieving thedata indicating the information from the file-based application-indexinglog via the API.
 5. The computer-implemented method of claim 1,comprising: utilizing, by the one or more computing devices, a machinelearning (ML) model to determine, for each suggested candidate input ofthe one or more suggested candidate inputs, a predicted likelihood thata user will select the suggested candidate input via the interface; anddetermining, by the one or more computing devices, for each suggestedcandidate input of the at least one suggested candidate input, and basedat least in part on the predicted likelihood that the user will selectthe suggested candidate input via the interface, to include an option inthe interface for selecting the suggested candidate input.
 6. Thecomputer-implemented method of claim 5, comprising, for at least onesuggested candidate input of the one or more suggested candidate inputs:annotating, by the one or more computing devices, the suggestedcandidate input with metadata determined based at least in part on oneor more of: a portion of the information, factual knowledge about theuser, or factual knowledge about a physical environment in which the oneor more computing devices are located; and determining, by the one ormore computing devices and based at least in part on the metadata, thepredicted likelihood that the user will select the suggested candidateinput via the interface.
 7. The computer-implemented method of claim 5,comprising, for at least one suggested candidate input of the one ormore suggested candidate inputs: generating, by the one or morecomputing devices, one or more numeric descriptions of one or morefeatures of the suggested candidate input distinct from its content; anddetermining, by the one or more computing devices and based at least inpart on the one or more numeric descriptions, the predicted likelihoodthat the user will select the suggested candidate input via theinterface.
 8. The computer-implemented method of claim 7, wherein, forat least one suggested candidate input of the one or more suggestedcandidate inputs, the one or more features comprise one or more of howrecently or how frequently the content of the suggested candidate inputwas presented by the one or more computing devices.
 9. Thecomputer-implemented method of claim 7, wherein, for at least onesuggested candidate input of the one or more suggested candidate inputs,the one or more features comprise a type of societal entity associatedwith the suggested candidate input.
 10. The computer-implemented methodof claim 5, comprising determining, by the one or more computing devicesand for at least one suggested candidate input of the one or moresuggested candidate inputs, the predicted likelihood that the user willselect the suggested candidate input based at least in part on dataidentifying one or more of the second application or a selected inputfield of the second application.
 11. The computer-implemented method ofclaim 5, comprising updating, by the one or more computing devices, theML model based at least in part on data generated by a plurality ofdifferent computing devices via a federated-learning paradigm.
 12. Thecomputer-implemented method of claim 5, comprising generating, by theone or more computing devices and for at least one suggested candidateinput of the one or more suggested candidate inputs, a training recordfor the ML model based at least in part on one or more numericdescriptions of one or more features of the suggested candidate inputdistinct from its content.
 13. The computer-implemented method of claim5, comprising generating, by the one or more computing devices and forat least one suggested candidate input of the one or more suggestedcandidate inputs, a training record for the ML model based at least inpart on a determination that the user manually input data correspondingto content of the suggested candidate input in lieu of selecting thesuggested candidate input via the interface.
 14. Thecomputer-implemented method of claim 1, wherein: providing the interfacecomprises generating a graphical user interface (GUI) comprising one ormore elements corresponding to the one or more options to select the atleast one suggested candidate input; and the method comprises:determining, by the one or more computing devices, a predictedlikelihood that a user will select the particular suggested candidateinput via the interface; and determining, by the one or more computingdevices and based at least in part on the predicted likelihood, one ormore of: a size of an element, of the one or more elements,corresponding to an option, of the one or more options, to select theparticular suggested candidate input; or a number of the one or moreelements, corresponding to one or more of the one or more options toselect one or more other suggested candidate inputs of the at least onesuggested candidate input, to be presented alongside the elementcorresponding to the option to select the particular suggested candidateinput.
 15. A system comprising: one or more processors; and a memorystoring instructions that when executed by the one or more processorscause the system to perform operations comprising: receiving dataindicating information that has been presented by a first applicationexecuted by the system; receiving data indicating information that hasbeen input into a second application executed by the system, the secondapplication being different and distinct from the first application;generating, based at least in part on the data indicating theinformation that has been presented by the first application and thedata indicating the information that has been input into the secondapplication, one or more suggested candidate inputs for the secondapplication; providing, in association with the second application, aninterface comprising one or more options to select at least onesuggested candidate input of the one or more suggested candidate inputs;and responsive to receiving data indicating a selection of a particularsuggested candidate input of the one or more suggested candidate inputsvia the interface, communicating, to the second application, dataindicating the particular suggested candidate input.
 16. The system ofclaim 15, wherein the operations comprise: utilizing a machine learning(ML) model to determine, for each suggested candidate input of the oneor more suggested candidate inputs, a predicted likelihood that a userwill select the suggested candidate input via the interface; anddetermining, for each suggested candidate input of the at least onesuggested candidate input and based at least in part on the predictedlikelihood that the user will select the suggested candidate input viathe interface, to include an option in the interface for selecting thesuggested candidate input.
 17. The system of claim 16, wherein theoperations comprise, for each suggested candidate input of the one ormore suggested candidate inputs: generating one or more numericdescriptions of one or more features of the suggested candidate inputdistinct from its content; and determining, based at least in part onthe one or more numeric descriptions, the predicted likelihood that theuser will select the suggested candidate input via the interface. 18.One or more non-transitory computer-readable media comprisinginstructions that when executed by one or more computing devices causethe one or more computing devices to perform operations comprising:receiving data indicating information that has been one or more ofpresented by or input into an application executed by the one or morecomputing devices; generating, based at least in part on the dataindicating the information that has been one or more of presented by orinput into the application, one or more suggested candidate inputs forthe application including a suggested candidate input comprisingmetadata determined based at least in part on an entity associated withthe suggested candidate input; and providing, in association with theapplication executed by the one or more computing devices, an interfacecomprising one or more options to select at least one suggestedcandidate input of the one or more suggested candidate inputs includingthe suggested candidate input comprising the metadata determined basedat least in part on the entity associated with the suggested candidateinput.
 19. The one or more non-transitory computer-readable media ofclaim 18, wherein the suggested candidate input comprising the metadatacomprises data configured to cause a different and distinct applicationto output content related to the information that has been one or moreof presented by or input into the application executed by the one ormore computing devices.
 20. The one or more non-transitorycomputer-readable media of claim 18, wherein: providing the interfacecomprises generating a graphical user interface (GUI) comprising one ormore elements corresponding to the one or more options to select the atleast one suggested candidate input; and the operations comprise:determining a predicted likelihood that a user will select the suggestedcandidate input comprising the metadata via the interface; anddetermining, based at least in part on the predicted likelihood, one ormore of: a size of an element, of the one or more elements,corresponding to an option, of the one or more options, to select thesuggested candidate input comprising the metadata; or a number of theone or more elements, corresponding to one or more of the one or moreoptions to select one or more other suggested candidate inputs of the atleast one suggested candidate input, to be presented alongside theelement corresponding to the option to select the suggested candidateinput comprising the metadata.